package com.deyuanyun.pic.pbf.service;


import com.deyuanyun.pic.pbf.domain.ExternalInspectionVo;
import com.deyuanyun.pic.pbf.domain.PipeBodyDefect;
import com.deyuanyun.pic.pbf.domain.PipeBodyDefectExample;
import com.deyuanyun.pic.pipe.domain.Gww;
import com.deyuanyun.pic.pipe.domain.Identification;
import com.deyuanyun.pic.settings.controller.dto.MyFileVO;
import com.deyuanyun.pic.settings.domain.base.Attachment;
import com.deyuanyun.pic.settings.domain.pipe.PipeLine;
import com.deyuanyun.pic.settings.domain.pipe.PipeSegment;
import org.springframework.web.multipart.MultipartFile;

import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;

public interface PipeBodyDefectService {


    PipeBodyDefect selectByPrimaryKey(String id);

    int updateByPrimaryKeySelective(PipeBodyDefect record);

    int updateByPrimaryKey(PipeBodyDefect record);

    int createPipeBodyDefect(PipeBodyDefect record,String att[]) throws Exception;
    /**
     * 根据条件查询记录集
     */
    List<ExternalInspectionVo> queryData(Map param);

    /**
     * 根据id查询非内检缺陷记录
     */
    ExternalInspectionVo queryDefectById(String id);
    /**
     * 删除数据状态为'待审核'或'审核不通过'的缺陷数据（假删除）
     *
     * @param defect 需要删除的非内检缺陷
     * @return
     */
    int updateToDeleteById(PipeBodyDefect defect);

    /**
     * 导出非内检缺陷
     * @param param
     * @return
     */
    public List<String[]> queryDataExport(Map param);

    /**
     * 统计状态为待审核的缺陷数量
     * @param param
     * @return
     */
    int queryCountByState(Map param);

    /**
     * 根据修复方法id查询对应维修表名
     * @param
     * @return
     * @throws
     *
     */
    String  queryRepiarTabById(String repiarId);
    /**
     * 添加非内检缺陷的相对参考点信息
     */
    PipeBodyDefect queryReferenceByMile(PipeBodyDefect record);
    /**
     * 添加非内检测缺陷的上游环焊缝信息
     */
    PipeBodyDefect queryUgwNumberByMile(PipeBodyDefect record);
    /**
     * 非内检统计
     * @param param
     * @return
     */
    List<Map<String, Object>> queryOtherInspection(Map<String, Object> param);






}